#ifndef __SIPSUBSCRIPTION_HPP__
#define __SIPSUBSCRIPTION_HPP__

#include "SipResipConfigure.hpp"
#include "SipDialog.hpp"

namespace wtsip{


class RESIP_PUBLIC CSipSubscription: public CSipDialogBase{
public:

    CSipSubscription(CSipDialogSet& dlgset, const resip::Uri& local, const resip::Uri& remote);

    CSipSubscription(CSipDialogSet& dlgset, SipMessage& msg);

    virtual ~CSipSubscription();

    //virtual bool onRequest(CSipClnTransaction& clntran, SipMessage& msg);

    virtual bool onResponse(CSipClnTransaction& clntran, SipMessage& msg);

    virtual bool onRequest(CSipSrvTransaction& srvtran, SipMessage& msg);

    //virtual bool onResponse(CSipSrvTransaction& srvtran, SipMessage& msg);

    SipMessage* createSubscribe();

    SipMessage* createNotify();
};

}//namespace

#endif

